#pragma once
#include <QQuickItem>
#include "PropertyHelper.h"
class CustomGeometryItem : public QQuickItem
{
    Q_OBJECT
    AUTO_PROPERTY(QPointF, p1, QPointF(0, 0))
    AUTO_PROPERTY(QPointF, p2, QPointF(1, 0))
    AUTO_PROPERTY(QPointF, p3, QPointF(0, 1))
    AUTO_PROPERTY(QPointF, p4, QPointF(1, 1))
    AUTO_PROPERTY(int, segmentCount, 32)


    using Super = QQuickItem;
    QML_NAMED_ELEMENT(CustomGeometryItem)
public:
    CustomGeometryItem(QQuickItem *parent = nullptr);
    virtual ~CustomGeometryItem();

protected:
    virtual QSGNode *updatePaintNode(QSGNode *, UpdatePaintNodeData *) override;
private:

};
